﻿<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Default.master" CodeBehind="Overview.aspx.cs" Inherits="AjaxControlFramework.Docs.Overview" %>

<asp:Content runat="server" ContentPlaceHolderID="HeadTitle">
    Overview - Docs - AJAX Control Framework
</asp:Content>

<asp:Content runat="server" ContentPlaceHolderID="Title">
    An Overview of the AJAX Control Framework
</asp:Content>

<asp:Content runat="server" ContentPlaceHolderID="Content">
    <div class="content_group">
        <p>
            If you break up the average web application by its individual UI components, you generally get a collection of elements, where 
            each element does the following two things:
        </p>
        
        <ol>
            <li>Performs an action.</li>
            <li>Updates iteself and/or another UI element to reflect the result of the action.</li>
        </ol>
        
        <p>
            Here are some examples of this:
        </p>
        
        <ul>
            <li></li>
        </ul>
        
        
        <p>
            This 
            
            How everything works and drives 
                We all know this, but have you really thought about it?
            
            
            ASP.NET is fully object oriented. Every element on a page can have its own object (if you assign runat="server"). There are 
            even objects the represent logical, non-visual containers. 
            
            ASP.NET creates for you a server-side equivalent of the HTML DOM that your browser maintains. It lets you manipulate this server-side 
            DOM much like you can on the client-side with JavaScript. Having things structured like this makes building dynamic web applications 
            relatively easy and intuitive. 
            
            
            
            
            
            
            Building a dynamic web application is a challenging task. ASP.NET  A developer may go into a project with the 
            best intention of creating a clean adn
            
            
            
        </p>
        
        <p>
            Here is a simple procedure to follow in enabling the <span class="important">AJAX Control Framework</span>
            
            When you're ready to apply the <span class="important">AJAX Control Framework</span> to your web project, 
        </p>
        
        <ol>
            <li>For each page of your web application, <a href="/Tutorials/HowToDetermineQualifyingUIElements.aspx">determine which UI elements qualify for Ajaxification</a>.</li>
            <li>For each control determine </li>
        </ol>
        
        <p>
            In general, your application will consist of Pages, UserControls, and a set of custom WebControls. All of these 
            UI elements can have the <span class="important">AJAX Control Framework</span>'s functionality attached to it 
            (remember we can attach it to any class that derives from System.Web.UI.Control, even System.Web.UI.Page <span class="important">if you wanted to...doing so doesn't promote componentization so well though</span>). 
        </p>
        
        <p>
            To attach the <span class="important">AJAX Control Framework</span> functionality to a Control you simply inherit from the <span class="code_element">AjaxControlFramework.IAjaxControl</span> 
            interface (For an in-depth explanation on attaching AJAX functionality to a Control, read through the <a href="/Tutorials/HowToAttachAjax.aspx">How to Attach AJAX Functionality to Your Controls</a> tutorial.)
        </p>
    </div>
</asp:Content>